A computer as an information processing device includes a central processing unit (CPU, hereinafter referred to as processor), a main memory connected to the CPU via a bus, an input-output device connected to the CPU via a bus, and the like. To the input-output device, an external large-capacity auxiliary memory is connected, and an external network is connected.
In the main memory, a program or data in the auxiliary memory is stored. The processor frequently accesses the main memory to execute reading of a program instruction or reading and writing of data. Therefore, the access speed of the main memory is desired to be high.
As the main memory for which high-speed properties are desired, a dynamic random access memory (DRAM) or a static random access memory (SRAM) is generally used. The DRAM and the SRAM are high in access speed, but are a volatile memory that loses data when the power is turned off.
For the large-capacity auxiliary memory, a hard disk drive (HDD) or a solid state drive (SSD) formed of a flash memory is used. Though large in capacity, these auxiliary memories are slow in access speed and not suitable as the main memory that is arranged in the closest position to the processor.
In recent years, non-volatile memories having an access speed between that of a DRAM or an SRAM and that of an HDD or an SSD have been developed. Examples include a phase change RAM (PCM), a resistive RAM (ReRAM), and a magnetoresistive RAM (MRAM). These non-volatile memories do not lose data even when the power is turned off and less costly than a DRAM or an SRAM, but are slower in access speed than the volatile memory of the DRAM or the SRAM.
There have been made proposals to use, in a computer including a processor and a main memory, a memory combining a high-speed volatile memory and a low-speed but large-capacity non-volatile memory. Examples include International Publication Pamphlet No. WO 2006/093201 and Japanese Laid-open Patent Publication No. 2005-235182.